#include "qqmusic.h"

#include <QApplication>
#include <QSharedMemory>
#include <QMessageBox>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    //创建共享内存对象
    QSharedMemory sharedMemoty("QQMusic");
    //当程序第一次运行时，由于共享内存的空间还没有创建，此处attch一定会失败，返回false
    //当程序第二次运行时，由于共享内存的空间已经被前一次运行好的程序给申请好了，此时第二个实例再去关联就能成功
    //由于只能运行一个实例，让第二个实例直接退出，即让第二个进程结束即可
    if(sharedMemoty.attach()==true)
    {
        //第二个程序进入此
        //弹框提示 返回 即可
        QMessageBox::information(nullptr,"QQMusic提示","QQMusic已经在运行中...");
        return 0;
    }
    //创建1字节空间即可。是借助此共享内存机制来实现单例，不是为了通信
    sharedMemoty.create(1);

    QQMusic w;
    w.show();
    return a.exec();
}
